package com.mp.db.jpa.modelo;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;


import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;


@Entity
@NamedQueries({
    @NamedQuery(name="Usuario.findById",    query="SELECT usr FROM Usuario usr WHERE usr.idUsuario = :id") ,
    @NamedQuery(name="Usuario.findByLogin", query="SELECT usr FROM Usuario usr WHERE usr.login = :login"),
    @NamedQuery(name="Usuario.findAll", query="SELECT usr FROM Usuario usr")   
})
public class Usuario  implements Serializable
{

    @Id @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int idUsuario;
    
    @Column
    private String descUsuario;
    
    @Column
    private String login;
    
    @Column
    private String senha;
    
    @Column
    private String classe;

   
     
    @ManyToOne(fetch= FetchType.EAGER)
    @JoinColumn(name="idtipoitem")
    private TipoItem tipoItem;
   
    
    
    /**
     * @return the idUsuario
     */
    public int getIdUsuario() {
        return idUsuario;
    }

    /**
     * @param idUsuario the idUsuario to set
     */
    public void setIdUsuario(int idUsuario) {
        this.idUsuario = idUsuario;
    }

    /**
     * @return the descUsuario
     */
    public String getDescUsuario() {
        return descUsuario;
    }

    /**
     * @param descUsuario the descUsuario to set
     */
    public void setDescUsuario(String descUsuario) {
        this.descUsuario = descUsuario;
    }

    /**
     * @return the login
     */
    public String getLogin() {
        return login;
    }

    /**
     * @param login the login to set
     */
    public void setLogin(String login) {
        this.login = login;
    }

    /**
     * @return the senha
     */
    public String getSenha() {
        return senha;
    }

    /**
     * @param senha the senha to set
     */
    public void setSenha(String senha) {
        this.senha = senha;
    }

   
    /**
     * @param TipoItem the TipoItem to set
     */
    public void setTipoItem(TipoItem TipoItem) {
        this.tipoItem = TipoItem;
    }

    /**
     * @return the tipoItem
     */
    public TipoItem getTipoItem() {
        return tipoItem;
    }

    
     public String getClasse() {
        return classe;
    }

    public void setClasse(String classe) {
        this.classe = classe;
    }
    
}
